#include <iostream>

#include "test.h"

int main()
{
	A a = A();
	
	//int A::public_a=1; //error
	//int A::protected_a=2; //error
	//int A::private_a=3; //error

	//int A::public_static_a=1; //error
	//int A::protected_static_a=2; //error
	//int A::private_static_a=3; //error
	
	a.public_a = 1;
	//a.protected_a = 2; //can't call error
	//a.private_a = 3; //can't call error

	a.public_a1();
	//a.protected_a1(); //can't call error
	//a.private_a1(); //can't call error
	std::cout << "---------------------- "<< std::endl;

	//set
	a.public_a = 4;
	a.set_protected_a1(5);
	a.set_private_a1(6);
	a.public_static_a = 7;
	a.set_static_protected_a1(8);
	a.set_static_private_a1(9);

	a.public_a1();
	std::cout << "---------------------- "<< std::endl;
	a.print_all();//can call all the params
	std::cout << "---------------------- "<< std::endl;

	a.m_inner.print_b();
	return 0;
}